home *** CD-ROM | disk | FTP | other *** search
/ Suzy B Software 2 / Suzy B Software CD-ROM 2 (1994).iso / nasa / jul_gmst / jul_gmst.pas < prev    next >
Pascal/Delphi Source File  |  1995-05-02  |  1KB  |  53 lines

  1. program jd; { Berechne julianisches Datum und Greenwich Mean Siderial Time }
  2.  
  3. type
  4.    ZEIT = record
  5.              stunde:0..23;
  6.              minute,sekunde:0..59
  7.           end;
  8.  
  9.    DATUM = record
  10.               jahr:integer;
  11.               monat:1..12;
  12.               tag:1..31
  13.            end;
  14.  
  15.    JUL = record
  16.             ganz:long_integer;
  17.             fract:real
  18.          end;
  19.  
  20. var dummy:integer;
  21.     c:char;
  22.     gmst,lokal:ZEIT;
  23.     jd:JUL;
  24.     date:DATUM;
  25.     greg:boolean;
  26.  
  27. procedure juldat(var julian:JUL; gregorian:DATUM; uhrzeit:ZEIT; flag:boolean);
  28. external;
  29.  
  30. procedure sidtime(var sternzeit:ZEIT; julian:JUL);
  31. external;
  32.  
  33. begin
  34.    writeln(chr(27),
  35.            'H< CALCULATE JULIAN DATE AND GREENWICH MEAN SIDERIAL TIME >');
  36.    writeln;
  37.    write('> Date yyyy mm dd : '); readln(date.jahr,date.monat,date.tag);
  38.    write('> Greg. (y/n)     : '); read(c);
  39.    if c = 'y' then greg := true else greg := false;
  40.    writeln;
  41.    write('> Time hh mm ss   : ');
  42.    readln(lokal.stunde,lokal.minute,lokal.sekunde);
  43.    writeln; writeln;
  44.    juldat(jd,date,lokal,greg);
  45.    writeln('  Julian date                  : ',jd.ganz,jd.fract:10:6);
  46.    sidtime(gmst,jd);
  47.    writeln('  Greenwich Mean Siderial Time : ',
  48.             gmst.stunde:3,gmst.minute:3,gmst.sekunde:3);
  49.    while not keypress do ;
  50. end.
  51.  
  52.  
  53.